Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Power saving



  Vim: revisited

I’ve had an off/on relationship with Vim for the past many years. Before, I never felt like we understood each other properly. Vim is almost useless without plugins and some essential settings in .vimrc, but fiddling with all the knobs and installing all the plugins that I thought I needed was a process that in the end stretched out from few hours to weeks, months even; and it the end it just caused frustration instead of making me a happier coder. Recently, I decided to give Vim ano...

   Linux,Editor,Vim,Setup,Quick guideline     2011-12-12 07:55:27

  Functional Programming Is Hard, That's Why It's Good

Odds are, you don’t use a functional programming language every day. You probably aren’t getting paid to write code in Scala, Haskell, Erlang, F#, or a Lisp Dialect. The vast majority of people in the industry use OO languages like Python, Ruby, Java or C#–and they’re happy with them. Sure, they might occasionally use a “functional feature” like “blocks” now and then, but they aren’t writing functional code.And yet, for years we’v...

   Functional Programming,Hard,Difficult,Reason to learn,Good     2011-10-18 02:55:38

  Why developer-friendliness is central to API design

Today, APIs play a bigger role in software development than ever before. The evolution of computing has been dominated by ever-increasing levels of abstraction; the use of higher-level languages, of course, but also the development of platforms, libraries, and frameworks. Professor Douglass C. Smith claims the progression of this second category far outpaced the development of programming languages.  Developers are also noticing that difficulty has shifted from designing algorithms a...

   API,User friendly,Significance, Improve quality     2011-12-21 02:29:54

  Functional Programming in C++

Probably everyone reading this has heard “functional programming” put forth as something that is supposed to bring benefits to software development, or even heard it touted as a silver bullet.  However, a trip to Wikipedia for some more information can be initially off-putting, with early references to lambda calculus and formal systems.  It isn’t immediately clear what that has to do with writing better software. My pragmatic summary:  A large fraction of th...

   C++,Functional programming     2012-04-28 06:16:37

  The Great Tech War Of 2012

From left: The late Apple cofounder Steve Jobs, Facebook CEO Mark Zuckerberg, Google CEO Larry Page, and Amazon CEO Jeff Bezos. | Photos courtesy of David Paul Morris/Getty Images (Jobs); Justin Sullivan/Getty Images (Zuckerberg); Chip East/Reuters (Page); Mario Tama/Getty Images (Bezos).Gilbert Wong, the mayor of Cupertino, California, calls his city council to order. "As you know, Cupertino is very famous for Apple Computer, and we're very honored to have Mr. Steve Jobs come here tonight ...

   2012,Tech war,Facebook,Apple,Google,Amazon,Tablet,Cloud,Analysis     2011-10-17 11:06:25

  Eleven Equations True Computer Science Geeks Should (at Least Pretend to) Know

This idea is a complete rip off an article that appeared in Wired a little while ago and it got me thinking what would my list for Computer Science look like?  Plus I thought it might be a fun post and unlike the Wired list this one goes to eleven.  So here they are in no particular order: Binomial Coefficient The Binomial Coefficient equation generates Pascal’s Triangle and gives you the coefficients for the Binomial Theorem these ideas are often attributed to Pa...

   Algorithms,Computer science,Euler formula,Fermat     2011-11-29 08:42:50

  Optimization Tricks used by the Lockless Memory Allocator

With the releasing of the Lockless Memory Allocator under the GPL version 3.0 license, we can now discuss more of the optimization tricks used inside it. Many of these are things you wouldn't want to use in normal code. However, when speed is the ultimate goal, sometimes we need to break a few rules and use code that is a little sneaky.The SlabA slab is a well-known technique for allocating fixed size objects. For a given object size, a chunk of memory is divided up into smaller regions of that ...

   Optimization,Memory allocation     2011-11-16 08:02:16

  How I Learned to Program

Programming is, without a doubt, the most mentally rewarding thing I've ever done. Programming taught me that life should be fun, filled with creativity, and lived to the fullest. Programming taught me that anything is possible; I can do anything I want using only my mind. Programming also taught me that learning is fun. It showed me that the more you know, the more power you have. Programming showed me that a life filled with learning is a life worth living. Programming revealed to me wh...

   Programming,Tips,Write,Practice,Interest     2012-02-04 21:37:12

  Native Audio with HTML5

Once upon a time, audio on the web lived primarily in the world of third-party browser plug-ins like Flash, QuickTime and Silverlight. This was not a bad world, but it had its issues.For one, most plug-ins require the user to install them, but not all users are willing (or able) to install them. Also, many players built with these plug-ins are inaccessible, making it difficult for folks who use assistive technologies to access the audio or alternative content.Then there are the front-end design ...

   Audio,HTML5,Built in,Audio tag,Video     2011-10-13 13:04:07

  C++11 multithreading tutorial

The code for this tutorial is on GitHub: https://github.com/sol-prog/threads. In my previous tutorials I’ve presented some of the newest C++11 additions to the language: regular expressions, raw strings and lambdas. Perhaps one of the biggest change to the language is the addition of multithreading support. Before C++11, it was possible to target multicore computers using OS facilities (pthreads on Unix like systems) or libraries like OpenMP and MPI. This tutorial is meant to get you st...

   C++,Multithreading,Standard 11,Demo     2011-12-18 00:50:35